<?php
/*
 * 0104881768	GUILLEN BENAVIDES
 */
class Reportes_Model extends CI_Model {

    function getInscritosSemestreCarreraCicloJornada($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$cancela) {

        $this->db->select('persona.ide_pers,persona.cedula_pers, persona.apellido_pers, persona.nombre_pers, 
            persona.fono_pers,persona.celular_pers,estudiante.email_pers_est,estudiante.face_est,carrera.nombre_car, 
            ciclos.nombre_cic,cursa.seccion,cursa.paralelo,matriculas.id_matr');
        $this->db->distinct();
        $this->db->from('estudiante');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('persona', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic ', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion ', $seccion);
        }
        if ($cancela>0) {
            $this->db->where('(matriculas.monto_canc_ins >0)');
        }
        
        $this->db->where('((matriculas.inscrip_matr=0) OR (matriculas.inscrip_matr =1))');
        $this->db->where('matriculas.eliminado', 0);
        $this->db->order_by('cursa.seccion');
        $this->db->order_by('carrera.nombre_car');
        $this->db->order_by('ciclos.nombre_cic');
        $this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }

    //function getMatriculadosPorSemestreCarreraCicloJornada($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion) {
    function getMatriculadosPorSemestreCarreraCicloJornada($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,
                $paralelo,$sexo_pers="NINGUNO",$autodefin_pers="NINGUNO",$agrupa=0) {


        $this->db->select('cursa.periodos_lectivos_ide_lec,cursa.ide_car,cursa.ide_pen,cursa.ide_cic,cursa.seccion,
            persona.ide_pers,persona.cedula_pers, persona.apellido_pers, persona.nombre_pers,persona.sexo_pers, 
            matriculas.id_matr,matriculas.nro_matr,matriculas.modo_mat,matriculas.estado_matr,carrera.nombre_car, ciclos.codigo_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo');
        $this->db->distinct();
        $this->db->from('estudiante');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('persona', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        //$this->db->where('(matriculas.estado_matr=1 OR matriculas.estado_matr=2)');
         $this->db->where('(matriculas.estado_matr=2 OR matriculas.estado_matr=5)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion', $seccion);
        }
        if (!empty($paralelo)&& $paralelo!="X" ) {
            $this->db->where('cursa.paralelo', $paralelo);
        }
        if ($sexo_pers!="NINGUNO") {
            $this->db->like('persona.sexo_pers', $sexo_pers);
        }
        if ($autodefin_pers!="NINGUNO") {
            $this->db->like('persona.autodefin_pers', $autodefin_pers);
        }

        //$this->db->where('(matriculas.modo_mat<>3 )');
        $this->db->where('(matriculas.inscrip_matr>2)');
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        if ($agrupa=0){
            $this->db->group_by('matriculas.id_matr');
        }
        //
        //$this->db->order_by('persona.cedula_pers');
        //$this->db->order_by('carrera.nombre_car');
        //$this->db->order_by('ciclos.codigo_cic');
        //$this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
    
    function getMatriculadospagoinicial($ide_lec, $ide_car,$ide_pen,$tipo_doc=0,$ini=0,$fin=0) {

        $this->db->select('
            persona.ide_pers,persona.cedula_pers, persona.apellido_pers, persona.nombre_pers, 
            matriculas.id_matr,matriculas.modo_mat,matriculas.monto_canc_matr,
            matriculas.forma_pago,matriculas.tipo_doc_pago_mat,carrera.nombre_car,ciclos.codigo_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo');
        $this->db->distinct();
        $this->db->from('estudiante');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('persona', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        
        //$this->db->where('(matriculas.estado_matr=1 OR matriculas.estado_matr=2)');
         
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ini>0 && $fin>0) {
            $this->db->where('(matriculas.monto_canc_matr BETWEEN '.$ini .' AND '. $fin.')' );
        }
        if ($tipo_doc>0) {
            $this->db->where('matriculas.tipo_doc_pago_mat', $tipo_doc);
        }
        $this->db->where('(matriculas.estado_matr=2)');
        $this->db->where('(matriculas.forma_pago=1 ||matriculas.forma_pago=7 )');
        
        $this->db->where('(matriculas.monto_canc_matr>0)');


        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('persona.cedula_pers');
        $this->db->order_by('carrera.nombre_car');
        $this->db->order_by('ciclos.codigo_cic');
        //$this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
    function  getMateriasArrastreAlumnosSemestre($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo){
        $this->db->select('
            matriculas.id_matr,matriculas.nro_matr,matriculas.modo_mat,
            carrera.nombre_car,ciclos.nombre_cic,cursa.seccion,cursa.paralelo,
            materia.nombre_mat,persona.apellido_pers,persona.nombre_pers');
        $this->db->distinct();
        $this->db->from('matriculas');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('estudiante', 'cursa.estudiante_ide_est = estudiante.ide_est', 'inner');
        $this->db->join('persona', 'estudiante.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->join('materia', '`materia.ide_mat = cursa.materia_ide_mat', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        //$this->db->where('(matriculas.modo_mat=2 OR matriculas.modo_mat=3 OR matriculas.modo_mat=4)');
        //$this->db->where('(matriculas.modo_mat=2)');
        //$this->db->where('(cursa.estado_cur=4)');
        $this->db->where('(cursa.estado_cur=4 OR cursa.estado_cur=5 OR matriculas.modo_mat=3)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic ', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion ', $seccion);
        }
        if (!empty($paralelo)) {
            $this->db->where('cursa.paralelo ', $paralelo);
        }
        
        $this->db->order_by('materia.nombre_mat');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
        

        
        
    }
    function  getAlumnosSemestreNormal($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo){
        $this->db->select('matriculas.id_matr,matriculas.nro_matr,matriculas.modo_mat,
            carrera.nombre_car,ciclos.ide_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo,
            materia.nombre_mat,persona.ide_pers,persona.cedula_pers,persona.apellido_pers,
            persona.nombre_pers');
        $this->db->distinct();
        $this->db->from('matriculas');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('estudiante', 'cursa.estudiante_ide_est = estudiante.ide_est', 'inner');
        $this->db->join('persona', 'estudiante.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->join('materia', '`materia.ide_mat = cursa.materia_ide_mat', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        $this->db->where('(matriculas.modo_mat=1 OR matriculas.modo_mat=2)');
        //$this->db->where('(matriculas.modo_mat=2)');
        //$this->db->where('(cursa.estado_cur=4)');
        //$this->db->where('(cursa.estado_cur=4 OR cursa.estado_cur=5 OR matriculas.modo_mat=3)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic ', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion ', $seccion);
        }
        if (!empty($paralelo)) {
            $this->db->where('cursa.paralelo ', $paralelo);
        }
        $this->db->where('(matriculas.inscrip_matr=3 OR matriculas.inscrip_matr=4)');
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('matriculas.id_matr');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
        

        
        
    }
    
    function  getAlumnosArrastran($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo){
        $this->db->select('matriculas.id_matr,matriculas.nro_matr,matriculas.modo_mat,
            carrera.nombre_car,ciclos.ide_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo,
            materia.nombre_mat,persona.ide_pers,persona.cedula_pers,persona.apellido_pers,
            persona.nombre_pers');
        $this->db->distinct();
        $this->db->from('matriculas');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('estudiante', 'cursa.estudiante_ide_est = estudiante.ide_est', 'inner');
        $this->db->join('persona', 'estudiante.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->join('materia', '`materia.ide_mat = cursa.materia_ide_mat', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        $this->db->where('(cursa.estado_cur=4 OR cursa.estado_cur=5 OR matriculas.modo_mat=3)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic ', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion ', $seccion);
        }
        if (!empty($paralelo)) {
            $this->db->where('cursa.paralelo ', $paralelo);
        }
        $this->db->where('(matriculas.inscrip_matr=3 OR matriculas.inscrip_matr=4)');
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('matriculas.id_matr');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
        

        
        
    }
    
       function  getAlumnosConvalidan($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo){
        $this->db->select('matriculas.id_matr,matriculas.nro_matr,matriculas.modo_mat,
            carrera.nombre_car,ciclos.ide_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo,
            materia.nombre_mat,persona.ide_pers,persona.cedula_pers,persona.apellido_pers,
            persona.nombre_pers');
        $this->db->distinct();
        $this->db->from('matriculas');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('estudiante', 'cursa.estudiante_ide_est = estudiante.ide_est', 'inner');
        $this->db->join('persona', 'estudiante.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->join('materia', '`materia.ide_mat = cursa.materia_ide_mat', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car ', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen ', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic ', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion ', $seccion);
        }
        if (!empty($paralelo)) {
            $this->db->where('cursa.paralelo ', $paralelo);
        }
        $this->db->where('(matriculas.modo_mat=3)');
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('matriculas.id_matr');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }

        
        
    }
    function getBecasPorSemestreCarreraCicloJornada($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo) {


        $this->db->select('cursa.periodos_lectivos_ide_lec,cursa.ide_car,cursa.ide_pen,cursa.ide_cic,cursa.seccion,
            persona.ide_pers,persona.cedula_pers, persona.apellido_pers, persona.nombre_pers, 
            matriculas.id_matr,matriculas.modo_mat,matriculas.forma_pago,carrera.nombre_car, ciclos.codigo_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo');
        $this->db->distinct();
        $this->db->from('estudiante');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('persona', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        //$this->db->where('(matriculas.estado_matr=1 OR matriculas.estado_matr=2)');
         $this->db->where('(matriculas.estado_matr=2)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion', $seccion);
        }
        if (!empty($paralelo)) {
            $this->db->where('cursa.paralelo', $paralelo);
        }
        $this->db->where('(matriculas.inscrip_matr=3 OR matriculas.inscrip_matr=4)');
        $this->db->where('((matriculas.forma_pago between 3 AND 6) OR  (matriculas.forma_pago=8)'
                . ' OR  (matriculas.forma_pago=9) OR  (matriculas.forma_pago=10))');
        
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('matriculas.id_matr');
        //$this->db->order_by('persona.cedula_pers');
        //$this->db->order_by('carrera.nombre_car');
        //$this->db->order_by('ciclos.codigo_cic');
        //$this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
    
     function getContadoPorSemestreCarreraCicloJornada($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,$paralelo) {


        $this->db->select('cursa.periodos_lectivos_ide_lec,cursa.ide_car,cursa.ide_pen,cursa.ide_cic,cursa.seccion,
            persona.ide_pers,persona.cedula_pers, persona.apellido_pers, persona.nombre_pers, 
            matriculas.id_matr,matriculas.modo_mat,matriculas.monto_canc_matr,carrera.nombre_car, ciclos.codigo_cic,ciclos.nombre_cic,cursa.seccion,cursa.paralelo');
        $this->db->distinct();
        $this->db->from('estudiante');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('persona', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        //$this->db->where('(matriculas.estado_matr=1 OR matriculas.estado_matr=2)');
         $this->db->where('(matriculas.estado_matr=2)');
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion', $seccion);
        }
        if (!empty($paralelo)&& $paralelo!="X") {
            $this->db->where('cursa.paralelo', $paralelo);
        }
        $this->db->where('(matriculas.inscrip_matr=3 OR matriculas.inscrip_matr=4)');
        $this->db->where('(matriculas.forma_pago=1 OR matriculas.forma_pago=2)');
        
        //$this->db->where('matriculas.inscrip_matr', 4);
        $this->db->where('matriculas.eliminado', 0);
        $this->db->group_by('matriculas.id_matr');
        //$this->db->order_by('persona.cedula_pers');
        //$this->db->order_by('carrera.nombre_car');
        //$this->db->order_by('ciclos.codigo_cic');
        //$this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
 /*SELECT
    `ciclos`.`ide_cic`
    , `ciclos`.`codigo_cic`
    , `ciclos`.`nombre_cic`
FROM
    `sacitss`.`matriculas`
    INNER JOIN `sacitss`.`cursa` 
        ON (`matriculas`.`id_matr` = `cursa`.`matriculas_id_matr`)
    INNER JOIN `sacitss`.`ciclos` 
        ON (`cursa`.`ide_cic` = `ciclos`.`ide_cic`)
WHERE (`matriculas`.`id_matr` =920); 
  * 
  */  
     function getCantidadMateriasCicloPorMatricula($id_matr) {
        $this->db->select('ciclos.ide_cic,ciclos.codigo_cic,ciclos.nombre_cic');
        $this->db->from('matriculas');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
         $this->db->where('matriculas.id_matr',$id_matr);
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
    public function estudiante_coutas($cedula,$periodo){
        $this->db->select("persona.cedula_pers,persona.apellido_pers,persona.nombre_pers
            , matriculas.id_matr");
        $this->db->from('persona');
        $this->db->join('estudiante', 'persona.ide_pers = estudiante.persona_ide_pers', 'inner');
        $this->db->join('matriculas', 'estudiante.ide_est = matriculas.estudiante_ide_est', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
         $this->db->like('persona.cedula_pers',$cedula);
         $this->db->where('cursa.periodos_lectivos_ide_lec',$periodo);
         $this->db->group_by('matriculas.id_matr');
         //
         
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
        
    }
        public function insertsql($cadsql) {
            $this->db->trans_start();
            $Q = $this->db->query($cadsql);
        //echo $this->db->last_query().'</br>';
            //$Q->result_array();
            $ide=$this->db->insert_id();
            $this->db->trans_complete();
            return $ide; 
            
    }
        public function updatesql($cadsql) {
            $this->db->trans_start();
            $Q = $this->db->query($cadsql);
        //echo $this->db->last_query().'</br>';
            //$Q->result_array();
            $this->db->trans_complete();
            return TRUE;
            
            
    }
    function getNroRecibo($ide_lec) {
        $nro_mat = 0;
        $this->db->select_max('recibo_cancela.nro_recibo', 'nro');
        $this->db->from('recibo_cancela');
        $this->db->where('ide_lec', $ide_lec);
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            //$data[0]['nro'];
            $nro_mat = (empty($data[0]['nro'])?0:$data[0]['nro']);
        }
        $query->free_result();
        return $nro_mat;
    }
     function getMallaCursaPeriodo($ide_lec) {
        
        $this->db->select('periodos_lectivos_ide_lec,ide_car,ide_pen,ide_cic,seccion,paralelo');
        $this->db->distinct();
        $this->db->from('cursa');
        $this->db->where('periodos_lectivos_ide_lec`', $ide_lec);
        $this->db->where('(ide_car>0 AND ide_pen>0 AND  ide_cic >0 AND seccion between 1 and 3)');
        $this->db->group_by('ide_car,ide_pen,ide_cic,seccion,seccion,paralelo');
        $data=array();

        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
        }
        $query->free_result();
        return $data;
    }
    
    function getMatriculadosRubros($ide_lec, $ide_car,$ide_pen,$ide_cic,$seccion,
                $paralelo,$ide_rubro) {

        $this->db->select('rubro.nombre_rubro,rubro.costo_rubro, asigna_rubro.estado_asigna,carrera.nombre_car,ciclos.nombre_cic,matriculas.id_matr,cursa.ide_cic,cursa.seccion
            ,cursa.paralelo,matriculas.modo_mat,persona.cedula_pers,persona.apellido_pers,persona.nombre_pers');
        $this->db->distinct();
        $this->db->from('rubro');
        $this->db->join('asigna_rubro', 'rubro.ide_rubro = asigna_rubro.ide_rubro', 'inner');
        $this->db->join('matriculas', 'asigna_rubro.ide_matr = matriculas.id_matr', 'inner');
        $this->db->join('cursa', 'matriculas.id_matr = cursa.matriculas_id_matr', 'inner');
        $this->db->join('estudiante', 'cursa.estudiante_ide_est = estudiante.ide_est', 'inner');
        $this->db->join('carrera', 'cursa.ide_car = carrera.ide_car', 'inner');
        $this->db->join('pensum', 'cursa.ide_pen = pensum.ide_pen', 'inner');

        $this->db->join('ciclos', 'cursa.ide_cic = ciclos.ide_cic', 'inner');
        $this->db->join('persona', 'estudiante.persona_ide_pers = persona.ide_pers', 'inner');
 
        $this->db->where('rubro.ide_rubro', $ide_rubro);
        $this->db->where('cursa.periodos_lectivos_ide_lec ', $ide_lec);
        if ($ide_car>0) {
        $this->db->where('cursa.ide_car', $ide_car);
        }
        if ($ide_pen>0) {
            $this->db->where('cursa.ide_pen', $ide_pen);
        }
        if ($ide_cic>0) {
            $this->db->where('cursa.ide_cic', $ide_cic);
        }
        if ($seccion>0) {
            $this->db->where('cursa.seccion', $seccion);
        }
        if (!empty($paralelo)&& $paralelo!="X" ) {
            $this->db->where('cursa.paralelo', $paralelo);
        }
        //
        $this->db->order_by('carrera.nombre_car, ciclos.nombre_cic,cursa.seccion,persona.apellido_pers');
        //$this->db->order_by('carrera.nombre_car');
        //$this->db->order_by('ciclos.codigo_cic');
        //$this->db->order_by('persona.apellido_pers');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
    

  

}
